home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1993 October: Windmill on DISC / ADC Developer CD (1993-10) (''Windmill On DISC'')_iso / Dev.CD Oct 93.iso / System Software / Printer Drivers / LW 8 v1.0.1 / LaserWriter 8.0 Disk 2 / Printing Tools / Printer Descriptions / LaserWriter < prev    next >
Encoding:
PostScript Printer Description  |  1993-04-30  |  10.6 KB  |  337 lines  |  [TEXT/????]

  1. *PPD-Adobe: "4.0"
  2. *FormatVersion: "4.0"
  3. *FileVersion: "3.1"
  4. *PCFileName: "APPLE230.PPD"
  5. *LanguageVersion: English
  6. *Product: "(LaserWriter)"
  7. *PSVersion: "(23.0) 0"
  8. *ModelName: "Apple LaserWriter"
  9. *NickName: "Apple LaserWriter v23.0"
  10.  
  11. *% General Information and Defaults ===============
  12. *ColorDevice: False
  13. *DefaultColorSpace: Gray
  14. *FreeVM: "173936"
  15. *LanguageLevel: "1"
  16. *VariablePaperSize: False
  17. *FileSystem: False
  18. *Throughput: "8"
  19. *Password: "0"
  20. *ExitServer: "
  21.   count 0 eq {  % is the password on the stack?
  22.     true
  23.   }{
  24.     dup    % potential password
  25.     statusdict /checkpassword get exec not
  26.   } ifelse
  27.   {  %  if no password or not valid
  28.     (WARNING : Cannot perform the exitserver command.) =
  29.     (Password supplied is not valid.) =
  30.     (Please contact the author of this software.) = flush
  31.     quit
  32.   } if
  33.   serverdict /exitserver get exec
  34. "
  35. *End
  36.  
  37. *Reset: "
  38.   count 0 eq {  % is the password on the stack?
  39.     true
  40.   }{
  41.     dup    % potential password
  42.     statusdict /checkpassword get exec not
  43.   } ifelse
  44.   {  %  if no password or not valid
  45.     (WARNING : Cannot reset printer.) =
  46.     (Password supplied is not valid.) =
  47.     (Please contact the author of this software.) = flush
  48.     quit
  49.   } if
  50.   serverdict /exitserver get exec
  51.   systemdict /quit get exec
  52.   (WARNING : Printer Reset Failed.) = flush
  53. "
  54. *End
  55.  
  56. *DefaultResolution: 300dpi
  57. *?Resolution: "
  58. save
  59.   initgraphics
  60.   0 0 moveto currentpoint matrix defaultmatrix transform
  61.   0 72 lineto currentpoint matrix defaultmatrix transform
  62.   3 -1 roll sub dup mul
  63.   3 1 roll exch sub dup mul
  64.   add sqrt round cvi
  65.   (          ) cvs print (dpi) = flush
  66. restore
  67. "
  68. *End
  69.  
  70. *% Halftone Information ===============
  71. *ScreenFreq: "60.0"
  72. *ScreenAngle: "45.0"
  73. *DefaultScreenProc: Dot
  74. *ScreenProc Dot: "
  75. {dup mul exch dup mul add 1.0 exch sub }
  76. "
  77. *End
  78. *ScreenProc Line: "{ pop }"
  79. *ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"
  80.  
  81. *DefaultTransfer: Null
  82. *Transfer Null: "{ }"
  83. *Transfer Null.Inverse: "{ 1 exch sub }"
  84.  
  85. *% Paper Handling ===================
  86. *% Use these entries to set paper size most of the time, unless there is
  87. *% specific reason to use PageRegion.
  88. *OpenUI *PageSize: PickOne
  89. *OrderDependency: 30 AnySetup *PageSize
  90. *DefaultPageSize: Letter
  91. *PageSize Letter/US Letter: "letter"
  92. *PageSize Legal/US Legal: "legal"
  93. *PageSize LetterSmall/US Letter: "lettersmall"
  94. *PageSize LegalSmall/US Legal: "legal"
  95. *PageSize Monarch/Monarch Envelope Edge Fed: "letter"
  96. *PageSize Com10/Com10 Envelope Edge Fed: "letter"
  97. *?PageSize: "
  98. save
  99.   [(Letter)(Legal)] statusdict /pagetype get exec
  100.   {get} stopped { pop pop (Unknown)} if = flush
  101. restore
  102. "
  103. *End
  104. *CloseUI: *PageSize
  105.  
  106. *% These entries will set up the frame buffer. Usually used with manual feed.
  107. *OpenUI *PageRegion: PickOne
  108. *OrderDependency: 40 AnySetup *PageRegion
  109. *DefaultPageRegion: Letter
  110. *PageRegion Letter/US Letter: "letter"
  111. *PageRegion Legal/US Legal: "legal"
  112. *PageRegion LetterSmall/US Letter: "lettersmall"
  113. *PageRegion LegalSmall/US Legal: "legal"
  114. *PageRegion Monarch/Monarch Envelope Edge Fed: "letter"
  115. *PageRegion Com10/Com10 Envelope Edge Fed: "letter"
  116. *CloseUI: *PageRegion
  117.  
  118. *% The following entries provide information about specific paper keywords.
  119. *DefaultImageableArea: Letter
  120. *ImageableArea Letter/US Letter: "18 8 593 784 "
  121. *ImageableArea Legal/US Legal: "65 37 547 972 "
  122. *ImageableArea LetterSmall/US Letter: "31 31 583 761 "
  123. *ImageableArea LegalSmall/US Legal: "64 54 548 954 "
  124. *ImageableArea Monarch/Monarch Envelope Edge Fed: "19 269 274 773 "
  125. *ImageableArea Com10/Com10 Envelope Edge Fed: "19 125 292 773 "
  126. *?ImageableArea: "
  127. save
  128.   /cvp {(                ) cvs print ( ) print } bind def
  129.   /upperright {10000 mul floor 10000 div} bind def
  130.   /lowerleft {10000 mul ceiling 10000 div} bind def
  131.   newpath clippath pathbbox
  132.   4 -2 roll exch 2 {lowerleft cvp} repeat
  133.   exch 2 {upperright cvp} repeat flush
  134.  restore
  135. "
  136. *End
  137.  
  138. *% These provide the physical dimensions of the paper (by keyword)
  139. *DefaultPaperDimension: Letter
  140. *PaperDimension Letter/US Letter: "612 792"
  141. *PaperDimension Legal/US Legal: "612 1008"
  142. *PaperDimension LetterSmall/US Letter: "612 792"
  143. *PaperDimension LegalSmall/US Legal: "612 1008"
  144. *PaperDimension Monarch/Monarch Envelope Edge Fed: "611 792"
  145. *PaperDimension Com10/Com10 Envelope Edge Fed: "610 792"
  146.  
  147. *RequiresPageRegion All: True
  148. *OpenUI *InputSlot: PickOne
  149. *OrderDependency: 20 AnySetup *InputSlot
  150. *DefaultInputSlot: Cassette
  151. *InputSlot Cassette: ""
  152. *CloseUI: *InputSlot
  153.  
  154. *OpenUI *ManualFeed/Manual Feed: Boolean
  155. *OrderDependency: 20 AnySetup *ManualFeed
  156. *DefaultManualFeed: False
  157. *ManualFeed True: "statusdict /manualfeed true put"
  158. *ManualFeed False: "statusdict /manualfeed false put"
  159. *?ManualFeed: "
  160. save
  161.  statusdict /manualfeed get {(True)}{(False)}ifelse = flush
  162. restore
  163. "
  164. *End
  165. *CloseUI: *ManualFeed
  166.  
  167. *DefaultOutputOrder: Reverse
  168.  
  169. *% Font Information =====================
  170. *DefaultFont: Courier
  171. *Font Courier-Bold: Standard "(001.000)" Standard ROM
  172. *Font Courier-BoldOblique: Standard "(001.000)" Standard ROM
  173. *Font Courier-Oblique: Standard "(001.000)" Standard ROM
  174. *Font Helvetica: Standard "(001.001)" Standard ROM
  175. *Font Helvetica-Bold: Standard "(001.001)" Standard ROM
  176. *Font Helvetica-BoldOblique: Standard "(001.000)" Standard ROM
  177. *Font Helvetica-Oblique: Standard "(001.000)" Standard ROM
  178. *Font Symbol: Special "(001.001)" Special ROM
  179. *Font Times-Bold: Standard "(001.001)" Standard ROM
  180. *Font Times-BoldItalic: Standard "(001.001)" Standard ROM
  181. *Font Times-Italic: Standard "(001.001)" Standard ROM
  182. *Font Times-Roman: Standard "(001.000)" Standard ROM
  183. *?FontQuery: "
  184. save
  185.  /str 100 string dup 0 (fonts/) putinterval def
  186.  {
  187.    count 1 gt
  188.    {
  189.      exch dup str 6 94 getinterval cvs
  190.      (/) print print (:) print
  191.      FontDirectory exch known
  192.      {(Yes)}{(No)} ifelse =
  193.    }
  194.    {exit} ifelse
  195.  }bind loop
  196.  (*) = flush
  197. restore
  198. "
  199. *End
  200.  
  201. *?FontList: "
  202. save
  203.   FontDirectory { pop == } bind flush forall (*) = flush
  204. restore
  205. "
  206. *End
  207.  
  208. *% Printer Messages (verbatim from printer):
  209. *Message: "%%[ exitserver: permanent state may be changed ]%%"
  210. *Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"
  211. *Message: "\FontName\ not found, using Courier"
  212.  
  213. *% Status (format: %%[ status: <one of these> ]%% )
  214. *Status: "idle"
  215. *Status: "busy"
  216. *Status: "waiting"
  217. *Status: "printing"
  218. *Status: "PrinterError: timeout, clearing printer"
  219. *Status: "PrinterError: timeout"
  220. *Status: "PrinterError: paper entry misfeed"
  221. *Status: "PrinterError: no toner cartridge"
  222. *Status: "PrinterError: service call"
  223. *Status: "PrinterError: paper entry misfeed"
  224. *Status: "PrinterError: no paper tray"
  225. *Status: "PrinterError: out of paper"
  226. *Status: "PrinterError: cover open"
  227. *Status: "PrinterError: resetting printer"
  228. *Status: "PrinterError: manual feed timeout"
  229. *Status: "PrinterError: warming up"
  230.  
  231. *% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
  232. *Source: "serial9"
  233. *Source: "serial25"
  234. *Source: "AppleTalk"
  235.  
  236. *% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
  237. *PrinterError: "timeout, clearing printer"
  238. *PrinterError: "timeout"
  239. *PrinterError: "paper entry misfeed"
  240. *PrinterError: "no toner cartridge"
  241. *PrinterError: "service call"
  242. *PrinterError: "paper entry misfeed"
  243. *PrinterError: "no paper tray"
  244. *PrinterError: "out of paper"
  245. *PrinterError: "cover open"
  246. *PrinterError: "resetting printer"
  247. *PrinterError: "manual feed timeout"
  248. *PrinterError: "warming up"
  249.  
  250. *%DeviceAdjustMatrix: "[1 0 0 1 0 0]"
  251.  
  252. *% Color Separation Information =====================
  253.  
  254. *DefaultColorSep: ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi
  255.  
  256. *InkName: ProcessBlack/Process Black
  257. *InkName: CustomColor/Custom Color
  258. *InkName: ProcessCyan/Process Cyan
  259. *InkName: ProcessMagenta/Process Magenta
  260. *InkName: ProcessYellow/Process Yellow
  261.  
  262. *% For 60 lpi / 300 dpi =====================================================
  263.  
  264. *ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"
  265. *ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"
  266. *ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"
  267. *ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"
  268. *ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"
  269.  
  270. *ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"
  271. *ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"
  272. *ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"
  273. *ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"
  274. *ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"
  275.  
  276. *% For 53 lpi / 300 dpi =====================================================
  277.  
  278. *ColorSepScreenAngle ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
  279. *ColorSepScreenAngle CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
  280. *ColorSepScreenAngle ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "71.5651"
  281. *ColorSepScreenAngle ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "18.4349"
  282. *ColorSepScreenAngle ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "0.0"
  283.  
  284. *ColorSepScreenFreq ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
  285. *ColorSepScreenFreq CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
  286. *ColorSepScreenFreq ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
  287. *ColorSepScreenFreq ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
  288. *ColorSepScreenFreq ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "50.0"
  289.  
  290. *% This patch file inserts a delay before manualfeed to fix a bug
  291. *% in the version 23 LaserWriter.
  292. *JobPatchFile 1/ManualFeedDelay: "
  293. save 
  294. /version23-manualfeedpatch where { pop false } { true }ifelse
  295.  % we don't do an explicit 'get' since product and version MAY
  296.  % be in systemdict or statusdict - this technique gets the lookup
  297.  % without failure
  298. statusdict begin
  299.   product (LaserWriter) eq        % true if LaserWriter
  300.   version cvr 23.0 eq             % true if version 23
  301. end
  302.  
  303. and  % only install this patch if both are true
  304. and  % true only if patch is not installed and is for this printer
  305.      % save object and boolean on stack
  306. dup { exch restore }if
  307. % either true OR saveobject false
  308. dup
  309. {
  310.   /version23-manualfeedpatch true def
  311.   /oldversion23-showpage /showpage load def
  312.   /showpage       % this showpage will wait extra time if manualfeed is true
  313.   {%
  314.      statusdict /manualfeed known
  315.      {% manualfeed known in statusdict
  316.         statusdict /manualfeed get
  317.         {% if true then we loop for 5 seconds
  318.            usertime 5000 add       % target usertime
  319.            { % loop
  320.              dup usertime sub 0 lt
  321.              { exit }if
  322.            }loop
  323.            pop             % pop the usertime off the stac}if
  324.          }if
  325.          oldversion23-showpage
  326.      }bind def
  327. }if
  328. not{ restore }if
  329. "
  330. *End
  331.  
  332. *% For "LaserWriter" version 23.0
  333. *% Produced by "GETapd.ps" version 2.0 edit 45
  334. *% Converted to meet 4.0 specification
  335. *% Last Edit Date: Dec 21 1992
  336. *% end of PPD file for LaserWriter
  337.